""""""

"""
List（列表） 是 Python 中使用 最频繁 的数据类型，在其他语言中通常叫做 数组
"""

"""
函数list
可以任何序列作为list函数的参数
"""
lst = list('hello')
print(lst)   # ['h', 'e', 'l', 'l', 'o']
print(''.join(lst)) # hello

"""
列表的基本操作
"""
names = ["zhangsan", "lisi", "wangwu"]
# 增
names.insert(2, "zhaoliu") # 在指定位置插入数据
names.append("aaa") # 在末尾追加数据
names1 = ["bbb", "ccc"]
names.extend(names1) # 列表追加到列表末尾, 与拼接不同, 这里是修改, 拼接是返回一个新的列表

# 改
names[1] = "hello" # 修改指定索引的数据

# 删
del names[1] # 删除指定索引的数据
names.remove("aaa") # 删除第一个出现的指定数据
names.pop() # 删除末尾数据
names.pop(2) # 删除指定索引数据
names.clear() # 清空列表

# 给切片赋值
name = list('zhangsan')
name[2:] = list('lisi')
print(name) #['z', 'h', 'l', 'i', 's', 'i']


"""
列表方法
"""
# copy, 复制列表
a = [1, 2, 3]
b = a.copy()
b[1] = 4
print(a, b) # [1, 2, 3] [1, 4, 3]

# count, 指定元素在列表中出现的次数
print(a.count(2)) # 1

# len: 列表长度
print(len(names)) #3

# index, 在列表中查找指定值第一次出现的索引
print(a.index(3)) # 2

# reserve, 反转
a.reverse()
print(a) # [3, 2, 1]

# sort
# 升序排列
print(names) # ['zhangsan', 'zhaoliu', 'bbb']
names.sort()
print(names) # ['bbb', 'zhangsan', 'zhaoliu']
# 降序排列
names.sort(reverse=True)
print(names) # ['zhaoliu', 'zhangsan', 'bbb']
# 逆序、反转
names.reverse()
print(names) # ['bbb', 'zhangsan', 'zhaoliu']


"""
循环
"""
lst = [1, 2, 3, 4]
for index in lst:
    print(index)


